#include "Poller.h"
#include "EPollPoller.h"

#include <stdlib.h>

// 创建默认的Poller对象
// 默认情况下返回基于epoll的Poller实现, 因为要使用Poll的话需要设置环境变量
Poller *Poller::newDefaultPoller(EventLoop *loop)
{
    if (::getenv("MUDUO_USE_POLL")) // 检查环境变量是否指定使用POLL
    {
        return nullptr; // 如果设置了环境变量，返回nullptr，应修改为返回基于POLL的Poller实现
    }
    else
    {
        // 默认情况下返回基于epoll的Poller实现, 因为要使用Poll的话需要设置环境变量
        return new EPollPoller(loop); 
    }
}
